package com.zyl.Ecs.auth.service;

import com.github.yulichang.base.MPJBaseService;
import com.zyl.Ecs.common.domain.auth.bean.Role;
import com.zyl.Ecs.common.domain.auth.ext.RoleExt;
import com.zyl.Ecs.common.exception.EcsException;

import java.util.List;

/**
* @version v1.0
* @Package: com.zyl.Ecs.auth.service
* @ClassName: RoleService
* @Description 针对表【base_role】的数据库操作Service实现
* @Author 翟玉龙
* @Date 2024-12-04 16:36:41
*/

public interface RoleService extends MPJBaseService<Role> {

    /**
     * 新增角色
     *
     * @param roleExt 角色信息
     * @return {@link RoleExt }
     * @throws EcsException 异常
     */
    RoleExt add(RoleExt roleExt) throws EcsException;

    /**
     * 删除角色
     * @param id 角色id
     * @return {@link RoleExt }
     * @throws EcsException 异常
     */
    RoleExt delete(Integer id) throws EcsException;

    /**
     * 更新角色
     * @param roleExt 角色信息
     * @return {@link RoleExt }
     * @throws EcsException 异常
     */
    RoleExt update(RoleExt roleExt) throws EcsException;

    /**
     * 获取角色列表
     * @return {@link List }<{@link RoleExt }>
     * @throws EcsException 异常
     */
    List<RoleExt> getList() throws EcsException;
}
